//
//  main.c
//  c_struct_pr
//
//  Created by chenyh on 2021/1/18.
//

#include <stdio.h>
#define LEN 20

struct names {
    char first[LEN];
    char last[LEN];
};
struct guy {
    struct names handle;
    char favfood[LEN];
    char job[LEN];
    float income;
};

int main(int argc, const char * argv[]) {
    // insert code here...
    
    struct guy fellow[2] = {
        {{"Ewen","Villard"},
            "grilled salmon",
            "personality coach",
            68112.00
        },
        {
            {"RREwen","RRVillard"},
                "RRRgrilled ",
                "RRRRRpersonality",
                121.00
        }
    };
    
    struct guy * him; // 这是一个指向结构的指针
    printf("address #1:%p #2:%p\n",&fellow[0],&fellow[1]);
    //指向结构体数据的首元素
    him = &fellow[0]; // 告诉编译器该指针指向何处
    printf("pointer #1:%p #2:%p\n",him,him + 1);
    printf("him->income is $%.2f: (*him).income is $%.2f\n",him->income,(*him).income);
    him++; //指向下一个结构
    
    printf("him->favfood is %s: him->handle.last is %s\n",him->favfood,him->handle.last);
    
    return 0;
}
